home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 9 / Night Owl CD-ROM (NOPV9) (Night Owl Publisher) (1993).ISO / 050a / snr53b.zip / TABULAR.S < prev    next >
Text File  |  1993-05-30  |  2KB  |  51 lines

  1. \  TABULAR.S
  2. \  demotest sample table
  3.  
  4. \  This table processes a tabular file and breaks the columns into separate
  5. \  coded segments. This is accomplished by a sequence of wild card
  6. \  searches, one for each tab column (except the last column, where we
  7. \  let the carriage return take care of the last tab stop).
  8.  
  9. \  This table is a neat way to break tabular files into something that
  10. \  a typesetting or desktop publishing system can work with, instead of
  11. \  having to manually insert bloody codes between columns.
  12.  
  13. \  The column widths are set up for DEMOTEST. on the distribution disk
  14.  
  15. \  These equations assume that there are at least two spaces between each
  16. \  column. You can, of course, change this requirement to suit your needs.
  17.  
  18. \  There will still be spaces between the columns after this conversion, so
  19. \  run the table TABULAR2.S next. That table will remove the extra spaces
  20. \  between columns for cleaner formatting.
  21.  
  22. \  The difference between this method of column processing and the
  23. \  one used in SPC2TAB.S is that this method has better control over the
  24. \  columns, and you can change the codes emitted between columns. Also,
  25. \  this method correctly handles the case where a blank column occurs once
  26. \  in a while in the tabular copy. The other table won't let you do that; it
  27. \  simply squishes multiple adjacent spaces into a single tab code.
  28.  
  29. \  To modify this table for other column widths, just change the
  30. \  repeater values.
  31.  
  32.  
  33. \ ----------------------------------------------------------------------------
  34.  
  35. \  The column widths are set up for DEMOTEST.DOC on the distribution disk
  36.  
  37. *(19)\v  *(16)\v  *(13)\v  *(13)\v  =      \+  continued on next line
  38. [bt*(19)\p0[ql[nt  *(16)\p21[qr[nt  *(13)\p39[qr[nt  *(13)\p54[cm\20\20*01
  39.  
  40. \  A carriage return will always set the flag for the first column of data.
  41. \  But if the flag for the last column is ON (*01), then an appropriate line
  42. \  terminator is output also.
  43.  
  44. \  The double spaces which are output in each replacement will be removed
  45. \  in a subsequent pass (TABULAR2.S). They are there simply because there are
  46. \  two spaces on the search side which separate columns.
  47.  
  48. \0d\0a*01=[et\0d\0a*00     \ ...4 columns have been processed, in which
  49.                            \    case output end of tab and set flag for
  50.                            \    column 1
  51.